#ifndef SETUP_VAR

#define SETUP_VAR

#include "WProgram.h"
#include "types.h"


/**
 * @brief declare micron per pulse for X axis
 */
extern unsigned int micronperpulseX;

/**
 * @brief declare micron per pulse for Y axis
 */
extern unsigned int micronperpulseY;

/**
 * @brief declare micron per pulse for Z axis
 */
extern unsigned int micronperpulseZ;

/**
 * @brief declare micron per pulse for A axis
 */
extern unsigned int micronperpulseA;

/**
 * @brief declare micron per pulse for B axis
 */
extern unsigned int micronperpulseB;

/**
 * @brief declare micron per pulse for C axis
 */
extern unsigned int micronperpulseC;

/**
 * @brief pulse width variable in microseconds
 */
extern int pulseWidth;

/**
 * @brief vartiable for amoont backlash in current unit
 */
extern int backlash;

/**
 * @brief variable for fifo buffer size
 */
extern int fifoSize;

/**
 * @brief maximum spindle speed possible
 */
extern CANON_SPINDLE_SPEED MAX_SPINDLE_SPEED;

/**
 * @brief maximum feed rate possible
 */
extern int MAX_FEED_RATE;

/**
 * @brief maximum axes speed values for each axis possible
 */
extern int MAX_AXIS_SPEED[6];


/**
 * @brief minimum spindle speed
 */
extern CANON_SPINDLE_SPEED MIN_SPINDLE_SPEED;

/**
 * @brief backlash speed
 */
extern int  BACKLASH_SPEED;

/**
 * @brief maximum acceleratioon possible
 */
extern int MAXIMUM_ACCELERATION;

/**
 * @brief offset for tool compensation
 */
extern int Tool_Offset;
/**
 * @brief backlash for each axis
 */
`
extern int Backlash[6];

/**
 * @brief current acceleration
 */
extern int Acceleration;

/**
 * @brief serial port 3 baud rate for tool changing communication
 */
extern unsigned int serial3baud;

/**
 * @brief direction variables for each axis
 */
extern boolean dirx,diry,dirz,dira,dirb,dirc;
#endif
